[INFO] fetching crate ublox 0.4.5...
[INFO] checking ublox-0.4.5 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate ublox 0.4.5 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate ublox 0.4.5 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ublox 0.4.5
[INFO] finished tweaking crates.io crate ublox 0.4.5
[INFO] tweaked toml for crates.io crate ublox 0.4.5 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cpuprofiler v0.0.4
[INFO] [stderr]   Downloaded ublox_derive v0.1.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5239ee0ab0f9c6e72194169014db6ab853117a41870fcb7f523cab5f2a9625f9
[INFO] running `Command { std: "docker" "start" "-a" "5239ee0ab0f9c6e72194169014db6ab853117a41870fcb7f523cab5f2a9625f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5239ee0ab0f9c6e72194169014db6ab853117a41870fcb7f523cab5f2a9625f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5239ee0ab0f9c6e72194169014db6ab853117a41870fcb7f523cab5f2a9625f9", kill_on_drop: false }`
[INFO] [stdout] 5239ee0ab0f9c6e72194169014db6ab853117a41870fcb7f523cab5f2a9625f9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e286ba7a8e0f1b44e75351ae2b4d7e2fe1bbb3c47f93850c22aa1fb9f1777451
[INFO] running `Command { std: "docker" "start" "-a" "e286ba7a8e0f1b44e75351ae2b4d7e2fe1bbb3c47f93850c22aa1fb9f1777451", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]    Compiling error-chain v0.12.4
[INFO] [stderr]    Compiling cpuprofiler v0.0.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking chrono v0.4.34
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking cpu-time v1.0.0
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]     Checking backtrace v0.3.69
[INFO] [stderr]    Compiling ublox_derive v0.1.0
[INFO] [stderr]     Checking serde v1.0.197
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking ublox v0.4.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking criterion v0.4.0
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.82s
[INFO] running `Command { std: "docker" "inspect" "e286ba7a8e0f1b44e75351ae2b4d7e2fe1bbb3c47f93850c22aa1fb9f1777451", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e286ba7a8e0f1b44e75351ae2b4d7e2fe1bbb3c47f93850c22aa1fb9f1777451", kill_on_drop: false }`
[INFO] [stdout] e286ba7a8e0f1b44e75351ae2b4d7e2fe1bbb3c47f93850c22aa1fb9f1777451
[INFO] checking ublox-0.4.5 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate ublox 0.4.5 into /workspace/builds/worker-1-tc2/source
[INFO] validating manifest of crates.io crate ublox 0.4.5 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate ublox 0.4.5
[INFO] finished tweaking crates.io crate ublox 0.4.5
[INFO] tweaked toml for crates.io crate ublox 0.4.5 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 5d3c57312c11fcfcbfbf8a243c21e9893cae4e0cac3f7eb8428bda7e6b18dd61
[INFO] running `Command { std: "docker" "start" "-a" "5d3c57312c11fcfcbfbf8a243c21e9893cae4e0cac3f7eb8428bda7e6b18dd61", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5d3c57312c11fcfcbfbf8a243c21e9893cae4e0cac3f7eb8428bda7e6b18dd61", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5d3c57312c11fcfcbfbf8a243c21e9893cae4e0cac3f7eb8428bda7e6b18dd61", kill_on_drop: false }`
[INFO] [stdout] 5d3c57312c11fcfcbfbf8a243c21e9893cae4e0cac3f7eb8428bda7e6b18dd61
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2e59b531601245e3eebb5862e2ef13d3e0b61ed53b0a53987d67ddfb608885fb
[INFO] running `Command { std: "docker" "start" "-a" "2e59b531601245e3eebb5862e2ef13d3e0b61ed53b0a53987d67ddfb608885fb", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling error-chain v0.12.4
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]    Compiling cpuprofiler v0.0.4
[INFO] [stderr]     Checking chrono v0.4.34
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking cpu-time v1.0.0
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]     Checking backtrace v0.3.69
[INFO] [stderr]    Compiling ublox_derive v0.1.0
[INFO] [stderr]     Checking serde v1.0.197
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking ublox v0.4.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/parser.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 45 |         (0..self.len()).find(|&i| self[i] == value)
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/parser.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |         self.drain(0..count);
[INFO] [stdout]    |                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |         self.buffer[self.len..self.len + to_copy].copy_from_slice(&other[..to_copy]);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:153:10
[INFO] [stdout]     |
[INFO] [stdout] 153 |         (0..self.len()).find(|&i| self[i] == value)
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:194:18
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for i in 0..buf.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:307:23
[INFO] [stdout]     |
[INFO] [stdout] 307 |             &self.buf[range.start + self.off..core::cmp::min(self.buf.len(), range.end + self.off)]
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:312:27
[INFO] [stdout]     |
[INFO] [stdout] 312 |               &self.new_buf[self.new_buf_offset + range.start.saturating_sub(split)
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 313 | |                 ..range.end - split + self.new_buf_offset]
[INFO] [stdout]     | |_________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:339:37
[INFO] [stdout]     |
[INFO] [stdout] 339 |             return Ok(&self.new_buf[offset..offset + count]);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:346:33
[INFO] [stdout]     |
[INFO] [stdout] 346 |             return Ok(&self.buf[offset..offset + count]);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/parser.rs:360:50
[INFO] [stdout]     |
[INFO] [stdout] 360 |                 .extend_from_slice(&self.new_buf[self.new_buf_offset..]);
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:364:33
[INFO] [stdout]     |
[INFO] [stdout] 364 |             return Ok(&self.buf[off..off + count]);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:371:46
[INFO] [stdout]     |
[INFO] [stdout] 371 |             .extend_from_slice(&self.new_buf[self.new_buf_offset..self.new_buf_offset + new_bytes]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:374:22
[INFO] [stdout]     |
[INFO] [stdout] 374 |         Ok(&self.buf[0..count])
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/parser.rs:382:46
[INFO] [stdout]     |
[INFO] [stdout] 382 |             .extend_from_slice(&self.new_buf[self.new_buf_offset..]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:421:10
[INFO] [stdout]     |
[INFO] [stdout] 421 |         (0..self.buf.len()).find(|&i| self.buf[i] == SYNC_CHAR_1)
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:436:40
[INFO] [stdout]     |
[INFO] [stdout] 436 |         let (a, b) = self.buf.peek_raw(2..(4 + pack_len + 2));
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ubx_packets/cfg_val.rs:248:54
[INFO] [stdout]      |
[INFO] [stdout] 248  |                 Self::$cfg_item(from_cfg_v_bytes!(&buf[4..], $cfg_value_type))
[INFO] [stdout]      |                                                        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 302  | / cfg_val! {
[INFO] [stdout] 303  | |   // CFG-UART1
[INFO] [stdout] 304  | |   Uart1Baudrate,        0x40520001, u32,
[INFO] [stdout] 305  | |   Uart1StopBits,        0x20520002, StopBits,
[INFO] [stdout] ...    |
[INFO] [stdout] 1112 | |   TpTimegridTp1,         0x2005000c, AlignmentToReferenceTime,
[INFO] [stdout] 1113 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `cfg_val` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ubx_packets/packets.rs:755:35
[INFO] [stdout]     |
[INFO] [stdout] 755 |             let data = &self.data[self.offset..self.offset + 12];
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:1792:48
[INFO] [stdout]      |
[INFO] [stdout] 1792 |             offset += value.write_to(&mut data[offset..]);
[INFO] [stdout]      |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:1807:52
[INFO] [stdout]      |
[INFO] [stdout] 1807 |             let cfg_val = CfgVal::parse(&self.data[self.offset..]);
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3071:35
[INFO] [stdout]      |
[INFO] [stdout] 3071 |             let data = &self.data[self.offset..self.offset + 30];
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3104:37
[INFO] [stdout]      |
[INFO] [stdout] 3104 |         core::str::from_utf8(&bytes[0..null_pos])
[INFO] [stdout]      |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3115:37
[INFO] [stdout]      |
[INFO] [stdout] 3115 |         core::str::from_utf8(&bytes[0..null_pos]).is_ok()
[INFO] [stdout]      |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3242:45
[INFO] [stdout]      |
[INFO] [stdout] 3242 |         let data = u32::from_le_bytes(chunk[0..4].try_into().unwrap());
[INFO] [stdout]      |                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3243:56
[INFO] [stdout]      |
[INFO] [stdout] 3243 |         let sensor_time_tag = u32::from_le_bytes(chunk[4..8].try_into().unwrap());
[INFO] [stdout]      |                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ubx_packets.rs:127:46
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let (ck_a, ck_b) = ubx_checksum(&ret[2..6]);
[INFO] [stdout]     |                                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking criterion v0.4.0
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/parser.rs:45:10
[INFO] [stdout]    |
[INFO] [stdout] 45 |         (0..self.len()).find(|&i| self[i] == value)
[INFO] [stdout]    |          ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/parser.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |         self.drain(0..count);
[INFO] [stdout]    |                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:131:21
[INFO] [stdout]     |
[INFO] [stdout] 131 |         self.buffer[self.len..self.len + to_copy].copy_from_slice(&other[..to_copy]);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:153:10
[INFO] [stdout]     |
[INFO] [stdout] 153 |         (0..self.len()).find(|&i| self[i] == value)
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:194:18
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for i in 0..buf.len() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:307:23
[INFO] [stdout]     |
[INFO] [stdout] 307 |             &self.buf[range.start + self.off..core::cmp::min(self.buf.len(), range.end + self.off)]
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:312:27
[INFO] [stdout]     |
[INFO] [stdout] 312 |               &self.new_buf[self.new_buf_offset + range.start.saturating_sub(split)
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 313 | |                 ..range.end - split + self.new_buf_offset]
[INFO] [stdout]     | |_________________________________________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:339:37
[INFO] [stdout]     |
[INFO] [stdout] 339 |             return Ok(&self.new_buf[offset..offset + count]);
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:346:33
[INFO] [stdout]     |
[INFO] [stdout] 346 |             return Ok(&self.buf[offset..offset + count]);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/parser.rs:360:50
[INFO] [stdout]     |
[INFO] [stdout] 360 |                 .extend_from_slice(&self.new_buf[self.new_buf_offset..]);
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:364:33
[INFO] [stdout]     |
[INFO] [stdout] 364 |             return Ok(&self.buf[off..off + count]);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:371:46
[INFO] [stdout]     |
[INFO] [stdout] 371 |             .extend_from_slice(&self.new_buf[self.new_buf_offset..self.new_buf_offset + new_bytes]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:374:22
[INFO] [stdout]     |
[INFO] [stdout] 374 |         Ok(&self.buf[0..count])
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/parser.rs:382:46
[INFO] [stdout]     |
[INFO] [stdout] 382 |             .extend_from_slice(&self.new_buf[self.new_buf_offset..]);
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:421:10
[INFO] [stdout]     |
[INFO] [stdout] 421 |         (0..self.buf.len()).find(|&i| self.buf[i] == SYNC_CHAR_1)
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:436:40
[INFO] [stdout]     |
[INFO] [stdout] 436 |         let (a, b) = self.buf.peek_raw(2..(4 + pack_len + 2));
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:678:36
[INFO] [stdout]     |
[INFO] [stdout] 678 |         let (a, b) = dual.peek_raw(2..6);
[INFO] [stdout]     |                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:699:21
[INFO] [stdout]     |
[INFO] [stdout] 699 |         let _ = buf[5..10];
[INFO] [stdout]     |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:720:25
[INFO] [stdout]     |
[INFO] [stdout] 720 |         assert_eq!(&buf[0..buf.len()], &[4, 5, 6, 7]);
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:724:25
[INFO] [stdout]     |
[INFO] [stdout] 724 |         assert_eq!(&buf[0..buf.len()], &[4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7]);
[INFO] [stdout]     |                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/parser.rs:814:48
[INFO] [stdout]     |
[INFO] [stdout] 814 |             let mut it = parser.consume(&bytes[0..8]);
[INFO] [stdout]     |                                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/parser.rs:819:48
[INFO] [stdout]     |
[INFO] [stdout] 819 |             let mut it = parser.consume(&bytes[8..]);
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ubx_packets/cfg_val.rs:248:54
[INFO] [stdout]      |
[INFO] [stdout] 248  |                 Self::$cfg_item(from_cfg_v_bytes!(&buf[4..], $cfg_value_type))
[INFO] [stdout]      |                                                        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 302  | / cfg_val! {
[INFO] [stdout] 303  | |   // CFG-UART1
[INFO] [stdout] 304  | |   Uart1Baudrate,        0x40520001, u32,
[INFO] [stdout] 305  | |   Uart1StopBits,        0x20520002, StopBits,
[INFO] [stdout] ...    |
[INFO] [stdout] 1112 | |   TpTimegridTp1,         0x2005000c, AlignmentToReferenceTime,
[INFO] [stdout] 1113 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: this warning originates in the macro `cfg_val` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ubx_packets/packets.rs:755:35
[INFO] [stdout]     |
[INFO] [stdout] 755 |             let data = &self.data[self.offset..self.offset + 12];
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:1792:48
[INFO] [stdout]      |
[INFO] [stdout] 1792 |             offset += value.write_to(&mut data[offset..]);
[INFO] [stdout]      |                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:1807:52
[INFO] [stdout]      |
[INFO] [stdout] 1807 |             let cfg_val = CfgVal::parse(&self.data[self.offset..]);
[INFO] [stdout]      |                                                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3071:35
[INFO] [stdout]      |
[INFO] [stdout] 3071 |             let data = &self.data[self.offset..self.offset + 30];
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3104:37
[INFO] [stdout]      |
[INFO] [stdout] 3104 |         core::str::from_utf8(&bytes[0..null_pos])
[INFO] [stdout]      |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3115:37
[INFO] [stdout]      |
[INFO] [stdout] 3115 |         core::str::from_utf8(&bytes[0..null_pos]).is_ok()
[INFO] [stdout]      |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3242:45
[INFO] [stdout]      |
[INFO] [stdout] 3242 |         let data = u32::from_le_bytes(chunk[0..4].try_into().unwrap());
[INFO] [stdout]      |                                             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]     --> src/ubx_packets/packets.rs:3243:56
[INFO] [stdout]      |
[INFO] [stdout] 3243 |         let sensor_time_tag = u32::from_le_bytes(chunk[4..8].try_into().unwrap());
[INFO] [stdout]      |                                                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/ubx_packets.rs:127:46
[INFO] [stdout]     |
[INFO] [stdout] 127 |         let (ck_a, ck_b) = ubx_checksum(&ret[2..6]);
[INFO] [stdout]     |                                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]   --> src/parser.rs:96:27
[INFO] [stdout]    |
[INFO] [stdout] 96 | impl<'a> core::ops::Index<core::ops::Range<usize>> for FixedLinearBuffer<'a> {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D trait-impl-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/parser.rs:99:28
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn index(&self, index: core::ops::Range<usize>) -> &Self::Output {
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 26 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `ublox` (lib) due to 3 previous errors; 26 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "2e59b531601245e3eebb5862e2ef13d3e0b61ed53b0a53987d67ddfb608885fb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e59b531601245e3eebb5862e2ef13d3e0b61ed53b0a53987d67ddfb608885fb", kill_on_drop: false }`
[INFO] [stdout] 2e59b531601245e3eebb5862e2ef13d3e0b61ed53b0a53987d67ddfb608885fb
